//package com.tianhui.consignor.mvp.presenter;
//
//import android.content.Context;
//import android.text.TextUtils;
//
//import com.tianhui.driverside.base.BaseResponse;
//import com.tianhui.driverside.constant.OrderType;
//import com.tianhui.driverside.manager.EventBusManage;
//import com.tianhui.driverside.manager.SharedPreferenceManager;
//import com.tianhui.driverside.mvp.contract.GoodsDetailContract;
//import com.tianhui.driverside.mvp.model.GoodsModel;
//import com.tianhui.driverside.mvp.model.OrderModel;
//import com.tianhui.driverside.mvp.model.enty.detailItem.OrderDetailItemInfo;
//import com.tianhui.driverside.mvp.model.enty.detailItem.OrderDetailTipInfo;
//import com.tianhui.driverside.mvp.model.enty.goods.GoodsDataList;
//import com.tianhui.driverside.mvp.model.enty.goods.GoodsInfo;
//import com.tianhui.driverside.progress.ObserverResponseListener;
//import com.tianhui.driverside.utils.ExceptionHandle;
//import com.tianhui.driverside.utils.LogUtil;
//import com.xuexiang.xutil.common.StringUtils;
//
//import java.util.ArrayList;
//import java.util.HashMap;
//import java.util.List;
//import java.util.Map;
//
///**
// * @author fgs
// * @date 2020/5/27
// * @description
// **/
//public class GoodsDetailPresenter extends GoodsDetailContract.Presenter {
//
//    private Context mContext;
//    private GoodsModel mModel;
//    private OrderModel mOrderModel;
//
//    public GoodsDetailPresenter(Context context) {
//        this.mContext = context;
//        mModel = new GoodsModel();
//        mOrderModel = new OrderModel();
//    }
//
//    @Override
//    public void requestGoodsDetail(Map<String, String> map, boolean isDialog) {
//        mModel.goodsListModel(mContext, map, isDialog, getView().bindLifecycle(), new ObserverResponseListener<BaseResponse<GoodsDataList>>() {
//            @Override
//            public void onNext(BaseResponse<GoodsDataList> baseResponse) {
//                if (getView() != null) {
//                    if (baseResponse.getCode() == 20000) {
//                        GoodsDataList goodsData = baseResponse.getData();
//                        List<GoodsInfo> goodsInfos = goodsData.records;
//                        if (null != goodsInfos && goodsInfos.size() > 0) {
//                            GoodsInfo info = goodsInfos.get(0);
////                            getView().showGoodsTopInfo(info);
////                            getView().showGoodsDetailItemList(getGoodsDetailList(info));
//                            getView().showGoodsDetailInfo(info);
//                        } else {
//                            getView().showEmptyView();
//                        }
//                    } else {
//                        getView().setMsg(baseResponse.getMsg());
//                    }
//                }
//            }
//
//            @Override
//            public void onError(ExceptionHandle.ResponseThrowable e) {
//
//                if (null != getView()) {
//                    getView().setMsg(e.message);
//
//                }
//            }
//        });
//    }
//
//    @Override
//    public void requestGoodsShareDetail(Map<String, String> map, boolean isDialog) {
//        mModel.orderShareInfoModel(mContext, map, true, getView().bindLifecycle(), new ObserverResponseListener<BaseResponse<GoodsInfo>>() {
//            @Override
//            public void onNext(BaseResponse<GoodsInfo> baseResponse) {
//                if (baseResponse.getCode() == 20000) {
//                    GoodsInfo mGoodsInfo = baseResponse.getData();
//                    if (mGoodsInfo != null) {
//                        getView().showGoodsDetailInfo(mGoodsInfo);
//                    } else {
//                        getView().showEmptyView();
//                    }
//                } else {
//                    getView().setMsg(baseResponse.getMsg());
//                }
//            }
//
//            @Override
//            public void onError(ExceptionHandle.ResponseThrowable e) {
//
//                getView().setMsg(e.message);
//            }
//        });
//    }
//
//    @Override
//    public void processGoodsGrab(GoodsInfo info) {
//        if (TextUtils.isEmpty(info.billno)) {
//            getView().setMsg("货源单信息有误，请重新打开界面");
//            return;
//        }
//
//        Map<String, String> map = new HashMap<>();
//        map.put("billno", info.billno);
//        map.put("drivertel", SharedPreferenceManager.getInstance().getPhone());
//        map.put("tradprice", info.baseprice);
//        map.put("longitude", SharedPreferenceManager.getInstance().getLongitude());
//        map.put("latitude", SharedPreferenceManager.getInstance().getLatitude());
//        String longitude = SharedPreferenceManager.getInstance().getLongitude();
//        String latitude = SharedPreferenceManager.getInstance().getLatitude();
//        LogUtil.print("longitude-" + longitude + "\n" + "latitude-" + latitude);
//
//        //detachable 值为1 需要拆单 传detachweight值 否则传weight的值
//        if (!TextUtils.isEmpty(info.detachable) && info.detachable.equals("1")) {
////            if (StringUtils.toDouble(mGoodsInfo.detachweight) > StringUtils.toDouble(mGoodsInfo.leftweight)) {
//            if (StringUtils.toDouble(info.detachweight) > StringUtils.toDouble(info.leftweight)) {
//                map.put("tradweight", info.leftweight);
//            } else {
//                map.put("tradweight", info.detachweight);
//            }
//
//            if (StringUtils.toDouble(info.detachweight) > StringUtils.toDouble(info.leftweight)) {
//                getView().showGrabTipDialog(map);
//            } else {
//                requestGoodsGrab(map, true);
//            }
//        } else {
//            map.put("tradweight", info.leftweight);
//            requestGoodsGrab(map, true);
//        }
//    }
//
//    @Override
//    public void requestGoodsGrab(Map<String, String> map, boolean isDialog) {
//        mModel.grabGoodsModel(mContext, map, true, getView().bindLifecycle(), new ObserverResponseListener<BaseResponse>() {
//            @Override
//            public void onNext(BaseResponse baseResponse) {
//                //提示多人抢单通道 提示重试
//                if (baseResponse.getCode() == 20000) {
////                    getView().setMsg(baseResponse.getData().toString());
//                    EventBusManage.refreshOrderList();
////                    EventBusManage.refreshOrderCurrentItem(OrderType.TYPE_GRAB);
////                    getView().activityFinish();
//                    getView().showGrabSuccess();
//                } else if (baseResponse.getCode() == 20005) {
//                    getView().showConfirmGrabTipDialog(baseResponse);
//                } else {
//                    getView().setMsg(baseResponse.getMsg());
//
//                }
//            }
//
//            @Override
//            public void onError(ExceptionHandle.ResponseThrowable e) {
//                getView().setMsg(e.message);
//            }
//        });
//    }
//
//    @Override
//    public void requestOrderCancel(BaseResponse baseResponse, boolean isDialog) {
//        String result = baseResponse.getData().toString();
//        if (!TextUtils.isEmpty(result)) {
//            Map<String, Object> map = new HashMap<>();
//            map.put("dispatchno", result);
//            map.put("canceltype", "信息填写有误");
//            map.put("reasons", "");
//            mOrderModel.cancelOrderModel(mContext, map, true, getView().bindLifecycle(), new ObserverResponseListener<BaseResponse>() {
//                @Override
//                public void onNext(BaseResponse baseResponse) {
//                    if (baseResponse.getCode() == 20000) {
//
//                        EventBusManage.refreshOrderList();
//                        EventBusManage.refreshOrderCurrentItem(OrderType.TYPE_CANCEL);
//                        getView().activityFinish();
//                    } else {
//                        getView().setMsg(baseResponse.getMsg());
//                    }
//                }
//
//                @Override
//                public void onError(ExceptionHandle.ResponseThrowable e) {
//                    getView().setMsg(e.message);
//                }
//            });
//        }
//    }
//
//    private List getGoodsDetailList(GoodsInfo info) {
//        List list = new ArrayList();
//        OrderDetailItemInfo itemInfo;
//        OrderDetailTipInfo tipInfo;
//
//        itemInfo = new OrderDetailItemInfo();
//        itemInfo.title = "装货地";
//        itemInfo.content = info.deliverprovince + info.delivercity + info.delivercounty + info.deliverdetails;
//        list.add(itemInfo);
//
//        itemInfo = new OrderDetailItemInfo();
//        itemInfo.title = "目的地";
//        itemInfo.content = info.destinationprovince + info.destinationcity + info.destinationcounty + info.destinationdetails;
//        list.add(itemInfo);
//
//
//        tipInfo = new OrderDetailTipInfo();
//        tipInfo.tip = "货物信息";
//        list.add(tipInfo);
//
//        itemInfo = new OrderDetailItemInfo();
//        itemInfo.title = "货物类型";
//        itemInfo.content = info.goodstypetext;
//        list.add(itemInfo);
//
//        itemInfo = new OrderDetailItemInfo();
//        itemInfo.title = "单价（元/吨）";
//        itemInfo.content = info.baseprice;
//        list.add(itemInfo);
//
//
//        itemInfo = new OrderDetailItemInfo();
//        itemInfo.title = "订单总量（吨）";
//        itemInfo.content = info.weight;
//        list.add(itemInfo);
//
//        if (!TextUtils.isEmpty(info.detachable) && info.detachable.equals("1")) {
//            itemInfo = new OrderDetailItemInfo();
//            itemInfo.title = "拆单量（吨）";
//            itemInfo.content = info.detachweight;
//            list.add(itemInfo);
//        }
//
//        itemInfo = new OrderDetailItemInfo();
//        itemInfo.title = "剩余单量（吨）";
//        itemInfo.content = info.leftweight;
//        list.add(itemInfo);
//
//
//        itemInfo = new OrderDetailItemInfo();
//        itemInfo.title = "车长（米）";
//
//        if (!TextUtils.isEmpty(info.lengthmin) || !TextUtils.isEmpty(info.lengthmax)) {
//            itemInfo.content = (info.lengthmin + "-" + info.lengthmax + "米");
//        } else {
//            itemInfo.content = ("不限");
//        }
//        list.add(itemInfo);
//
//
//        itemInfo = new OrderDetailItemInfo();
//        itemInfo.title = "吨位（吨）";
//        itemInfo.content = info.leftweight;
//
//        if (TextUtils.isEmpty(info.weightmax)) {
//            itemInfo.content = ("不限");
//        } else {
//            itemInfo.content = (info.weightmax);
//        }
//        list.add(itemInfo);
//
//        itemInfo = new OrderDetailItemInfo();
//        itemInfo.title = "单据有效时间";
//        itemInfo.content = info.sendordertime;
//        list.add(itemInfo);
//
//
//        itemInfo = new OrderDetailItemInfo();
//        itemInfo.title = "装货截止时间";
//        itemInfo.content = info.lendtime;
//        list.add(itemInfo);
//
//        return list;
//    }
//}
